package cn.iocoder.yudao.module.call.dal.dataobject.agent;

import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

import java.time.LocalDateTime;

/**
 * 坐席 DO
 *
 * @author 我
 */
@TableName("call_agent")
@KeySequence("call_agent_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class AgentDO extends BaseDO {

    /**
     * 坐席编号
     */
    @TableId
    private Long id;
    /**
     * 坐席工号
     */
    private String agentNumber;
    /**
     * 外呼手机
     */
    private String telephone;

    /**
     * 真实姓名
     */
    private String realName;

    /**
     * 身份证号
     */
    private String idNumber;

    /**
     * sip主叫加白状态
     */
    private Integer sipCallAuditStatus;

    /**
     * 双向回拨加白状态
     */
    private Integer doubleCallAuditStatus;

    /**
     * sip 外呼余额
     */
//    private Integer sipCallBalance;
//
//    /**
//     * 双向回拨余额
//     */
//    private Integer doubleCallBalance;

    /**
     * sip主叫号码
     */
    private String sipCallNumber;

    /**
     * 坐席登录密码
     */
    private String password;
    /**
     * 班组编号
     */
    private Long groupId;

    /**
     * 第二班组
     */
    private Long secGroupId;

    /**
     * 负责人编号
     */
    private Long ownerUserId;

    /**
     * 有效期
     */
    private Integer expireTime;

    /**
     * 有效期至
     */
    private LocalDateTime expireAt;

    /**
     * 账号状态： 0 未启用； 1 已启用； 9 已过期
     */
    private Integer status;


    /**
     * 加白审批结果
     */
    private String auditResult;

    /**
     * 坐席优先级
     */
    private Integer priorityAgent;

    private Long tenantId;

}